package com.cart.service;

import com.common.domain.Cart;

import java.util.List;

/**
 * @author Elias
 * @version 1.0
 * @date 2021-06-02 11:18
 * @description
 * @copyright 2021
 */
public interface CartService {
    /**
     * 查询用户购物车中的商品
     * @param userId 用户id
     * @return 购物车中的商品
     */
    List<Cart> queryCart(String userId);

    /**
     * 新增购物车：先去查询该商品；再去查询购物车有无该商品，有则update，无则insert
     * @param cart 购物车
     */
    void addCart(Cart cart);
    /**
     * 更新购物车数据
     * @param cart 购物车
     */
    void updateCart(Cart cart);

    /**
     * 删除购物车
     * @param cart 购物车
     */
    void  deleteCart(Cart cart);
    /**
     * 获取真实价钱，并进行数量校验
     * @param productId 商品id列表
     * @param productNums 商品数量列表
     * @param userId 用户id
     * @return 总钱数
     */
    Double totalPrice(String productId,String productNums,String userId);
}
